package com.hellobike.haxing.modules.wms.facade;

import com.hellobike.haxing.modules.wms.entity.ShippingHeader;
import com.hellobike.haxing.modules.wms.exception.WmsServiceException;

import java.util.List;

public interface WmsShippingFacade {


    void addShipping(ShippingHeader header, List<Long> deliveryIds, Long warehouseId, Integer userId) throws WmsServiceException;

    void addReturnShipping(ShippingHeader header, List<Long> ReturnHeaderIds, Long warehouseId, Integer userId) throws WmsServiceException;

    void updateShipping(ShippingHeader header, List<Long> deliveryIds, Long warehouseId, Integer userId) throws WmsServiceException;

    void updateReturnShipping(ShippingHeader header, List<Long> deliveryIds, Long warehouseId, Integer userId) throws WmsServiceException;

    void batchStartShipping(List<Long> ids, Long warehouseId, Integer sysUserId) throws WmsServiceException;

    void batchStartReturnShipping(List<Long> ids, Long warehouseId, Integer userId) throws WmsServiceException;

    void startShipping(Long shippingId, Long warehouseId, Integer userId) throws WmsServiceException;

    void startReturnShipping(Long shippingId, Long warehouseId, Integer userId) throws WmsServiceException;

    void completedShipping(Long shippingId, Long warehouseId, Integer userId) throws WmsServiceException;

}
